-
Notifications
You must be signed in to change notification settings - Fork 825
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Single-pass native code generation for x86-64 using dynasm. #276
Conversation
Still need to figure out why R8 and higher registers don't work.
@losfair I think there is a command to install on nightly , maybe |
98ccc4f
to
295efbf
Compare
bors try |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Almost!
(**(*_vmctx).internal.memories).base, | ||
(**(*_vmctx).internal.memories).bound, | ||
) | ||
let vmctx = _vmctx as *mut vm::InternalCtx; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just make the ctx parameter of this function &mut vm::InternalCtx
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then the definition of the ProtectedCaller
trait needs to be changed. I doubt whether this is really needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, my mistake. I thought this was part of a different function. Why does the protected caller need to figure out where the memory is?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because CALL_WASM
needs to setup a register containing memory information (base, bound) which is passed in as a paremeter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay. Let's merge this and then discuss implementation later.
bors r+ |
276: Single-pass native code generation for x86-64 using dynasm. r=lachlansneff a=losfair Co-authored-by: losfair <[email protected]>
Build failed |
f2d7223
to
08ba696
Compare
bors r+ |
276: Single-pass native code generation for x86-64 using dynasm. r=losfair a=losfair Co-authored-by: losfair <[email protected]>
No description provided.